-- Do not manually edit this file, it was auto-generated by dillonkearns/elm-graphql
-- https://github.com/dillonkearns/elm-graphql


module Qore.Object.Accessrestrict exposing (..)

import Graphql.Internal.Builder.Argument as Argument exposing (Argument)
import Graphql.Internal.Builder.Object as Object
import Graphql.Internal.Encode as Encode exposing (Value)
import Graphql.Operation exposing (RootMutation, RootQuery, RootSubscription)
import Graphql.OptionalArgument exposing (OptionalArgument(..))
import Graphql.SelectionSet exposing (SelectionSet)
import Json.Decode as Decode
import Qore.InputObject
import Qore.Interface
import Qore.Object
import Qore.Scalar
import Qore.ScalarCodecs
import Qore.Union


head : SelectionSet decodesTo Qore.Object.Head -> SelectionSet (Maybe decodesTo) Qore.Object.Accessrestrict
head object_ =
    Object.selectionForCompositeField "head" [] object_ (identity >> Decode.nullable)


accessrestrictoption : SelectionSet decodesTo Qore.Union.AccessRestrictOptionUnion -> SelectionSet (List decodesTo) Qore.Object.Accessrestrict
accessrestrictoption object_ =
    Object.selectionForCompositeField "accessrestrictoption" [] object_ (identity >> Decode.list)


id : SelectionSet (Maybe String) Qore.Object.Accessrestrict
id =
    Object.selectionForField "(Maybe String)" "id" [] (Decode.string |> Decode.nullable)


altrender : SelectionSet (Maybe String) Qore.Object.Accessrestrict
altrender =
    Object.selectionForField "(Maybe String)" "altrender" [] (Decode.string |> Decode.nullable)


audience : SelectionSet (Maybe String) Qore.Object.Accessrestrict
audience =
    Object.selectionForField "(Maybe String)" "audience" [] (Decode.string |> Decode.nullable)


lang : SelectionSet (Maybe String) Qore.Object.Accessrestrict
lang =
    Object.selectionForField "(Maybe String)" "lang" [] (Decode.string |> Decode.nullable)


script : SelectionSet (Maybe String) Qore.Object.Accessrestrict
script =
    Object.selectionForField "(Maybe String)" "script" [] (Decode.string |> Decode.nullable)


encodinganalog : SelectionSet (Maybe String) Qore.Object.Accessrestrict
encodinganalog =
    Object.selectionForField "(Maybe String)" "encodinganalog" [] (Decode.string |> Decode.nullable)


localtype : SelectionSet (Maybe String) Qore.Object.Accessrestrict
localtype =
    Object.selectionForField "(Maybe String)" "localtype" [] (Decode.string |> Decode.nullable)
